\hypertarget{class_a_s_u_s_factory}{}\doxysection{A\+S\+U\+S\+Factory Class Reference}
\label{class_a_s_u_s_factory}\index{ASUSFactory@{ASUSFactory}}


{\ttfamily \#include $<$D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+h$>$}

Inheritance diagram for A\+S\+U\+S\+Factory\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_a_s_u_s_factory}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{class_a_s_u_s_factory_ae86f494f4568dd22968f010dfe9e210f}{$\sim$\+A\+S\+U\+S\+Factory}} ()
\item 
virtual \mbox{\hyperlink{class_mouse}{Mouse}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_a84beb96edd3ce08bc17adfa1947e0c2e}{Create\+Mouse}} ()
\item 
virtual \mbox{\hyperlink{class_keyboard}{Keyboard}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_a5be756a45a3c95d9cd04675835158808}{Create\+Keyboard}} ()
\item 
virtual \mbox{\hyperlink{class_monitor}{Monitor}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_ab52cf7f9d7018605315572dbdba85664}{Create\+Monitor}} ()
\item 
virtual \mbox{\hyperlink{class_host}{Host}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_a3afbba7db45485c3fc34d7ea72708451}{Create\+Host}} ()
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{class_abstract_factory}{Abstract\+Factory}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_a40d4d2d557b0cf3b70ada2cd2276266d}{Instance}} ()
\item 
static \mbox{\hyperlink{_my_self_def_8h_a7927e087749615dae3114cc27b91c86d}{V\+O\+ID}} \mbox{\hyperlink{class_a_s_u_s_factory_aa9b458fe467d5c7dee132240b20e311a}{Destroy}} ()
\end{DoxyCompactItemize}
\doxysubsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_a_s_u_s_factory_a1003f1376fc12d39500abcefea96b112}{A\+S\+U\+S\+Factory}} ()
\item 
\mbox{\hyperlink{class_a_s_u_s_factory_ae4649e9735948212167cd1b616a9a720}{A\+S\+U\+S\+Factory}} (const \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} \&c\+A\+S\+U\+S\+Factory)
\item 
\mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} \& \mbox{\hyperlink{class_a_s_u_s_factory_aa42cc378e84fcad9b2753f970d8c4982}{operator=}} (const \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} \&c\+A\+S\+U\+S\+Factory)
\end{DoxyCompactItemize}
\doxysubsection*{Static Private Attributes}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} $\ast$ \mbox{\hyperlink{class_a_s_u_s_factory_aa42c2225f44f799055b20c9ab6096b1d}{m\+\_\+p\+Instance}} = N\+U\+LL
\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}


\doxysubsection{Detailed Description}


Definition at line 221 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+h.



\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_a_s_u_s_factory_ae86f494f4568dd22968f010dfe9e210f}\label{class_a_s_u_s_factory_ae86f494f4568dd22968f010dfe9e210f}} 
\index{ASUSFactory@{ASUSFactory}!````~ASUSFactory@{$\sim$ASUSFactory}}
\index{````~ASUSFactory@{$\sim$ASUSFactory}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{$\sim$ASUSFactory()}{~ASUSFactory()}}
{\footnotesize\ttfamily A\+S\+U\+S\+Factory\+::$\sim$\+A\+S\+U\+S\+Factory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

Destruction


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


Definition at line 295 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_a1003f1376fc12d39500abcefea96b112}\label{class_a_s_u_s_factory_a1003f1376fc12d39500abcefea96b112}} 
\index{ASUSFactory@{ASUSFactory}!ASUSFactory@{ASUSFactory}}
\index{ASUSFactory@{ASUSFactory}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{ASUSFactory()}{ASUSFactory()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily A\+S\+U\+S\+Factory\+::\+A\+S\+U\+S\+Factory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}

Construction


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


Definition at line 283 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_ae4649e9735948212167cd1b616a9a720}\label{class_a_s_u_s_factory_ae4649e9735948212167cd1b616a9a720}} 
\index{ASUSFactory@{ASUSFactory}!ASUSFactory@{ASUSFactory}}
\index{ASUSFactory@{ASUSFactory}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{ASUSFactory()}{ASUSFactory()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily A\+S\+U\+S\+Factory\+::\+A\+S\+U\+S\+Factory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} \&}]{c\+A\+S\+U\+S\+Factory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}

Copy Construction


\begin{DoxyParams}{Parameters}
{\em const} & \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}}\& c\+A\+S\+U\+S\+Factory \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_a_s_u_s_factory_a3afbba7db45485c3fc34d7ea72708451}\label{class_a_s_u_s_factory_a3afbba7db45485c3fc34d7ea72708451}} 
\index{ASUSFactory@{ASUSFactory}!CreateHost@{CreateHost}}
\index{CreateHost@{CreateHost}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{CreateHost()}{CreateHost()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_host}{Host}} $\ast$ A\+S\+U\+S\+Factory\+::\+Create\+Host (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

Create \mbox{\hyperlink{class_host}{Host}}


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Host$\ast$ 
\end{DoxyReturn}
\begin{DoxyNote}{Note}

\end{DoxyNote}


Implements \mbox{\hyperlink{class_abstract_factory_a5f87d3ac2fdef80bd009e26b7130e5fb}{Abstract\+Factory}}.



Definition at line 385 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_a5be756a45a3c95d9cd04675835158808}\label{class_a_s_u_s_factory_a5be756a45a3c95d9cd04675835158808}} 
\index{ASUSFactory@{ASUSFactory}!CreateKeyboard@{CreateKeyboard}}
\index{CreateKeyboard@{CreateKeyboard}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{CreateKeyboard()}{CreateKeyboard()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_keyboard}{Keyboard}} $\ast$ A\+S\+U\+S\+Factory\+::\+Create\+Keyboard (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

Create \mbox{\hyperlink{class_keyboard}{Keyboard}}


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Keyboard$\ast$ 
\end{DoxyReturn}
\begin{DoxyNote}{Note}

\end{DoxyNote}


Implements \mbox{\hyperlink{class_abstract_factory_aa10a0fd3ef457c7b9397c0a2001d86d4}{Abstract\+Factory}}.



Definition at line 357 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_ab52cf7f9d7018605315572dbdba85664}\label{class_a_s_u_s_factory_ab52cf7f9d7018605315572dbdba85664}} 
\index{ASUSFactory@{ASUSFactory}!CreateMonitor@{CreateMonitor}}
\index{CreateMonitor@{CreateMonitor}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{CreateMonitor()}{CreateMonitor()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_monitor}{Monitor}} $\ast$ A\+S\+U\+S\+Factory\+::\+Create\+Monitor (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

Create \mbox{\hyperlink{class_monitor}{Monitor}}


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Monitor$\ast$ 
\end{DoxyReturn}
\begin{DoxyNote}{Note}

\end{DoxyNote}


Implements \mbox{\hyperlink{class_abstract_factory_ab7853111b7db910e0a8953aa062bdf2c}{Abstract\+Factory}}.



Definition at line 371 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_a84beb96edd3ce08bc17adfa1947e0c2e}\label{class_a_s_u_s_factory_a84beb96edd3ce08bc17adfa1947e0c2e}} 
\index{ASUSFactory@{ASUSFactory}!CreateMouse@{CreateMouse}}
\index{CreateMouse@{CreateMouse}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{CreateMouse()}{CreateMouse()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_mouse}{Mouse}} $\ast$ A\+S\+U\+S\+Factory\+::\+Create\+Mouse (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

Create \mbox{\hyperlink{class_mouse}{Mouse}}


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Mouse$\ast$ 
\end{DoxyReturn}
\begin{DoxyNote}{Note}

\end{DoxyNote}


Implements \mbox{\hyperlink{class_abstract_factory_ab988a1ff535f4c2f0ea6bd3cfe418745}{Abstract\+Factory}}.



Definition at line 343 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_aa9b458fe467d5c7dee132240b20e311a}\label{class_a_s_u_s_factory_aa9b458fe467d5c7dee132240b20e311a}} 
\index{ASUSFactory@{ASUSFactory}!Destroy@{Destroy}}
\index{Destroy@{Destroy}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{Destroy()}{Destroy()}}
{\footnotesize\ttfamily \mbox{\hyperlink{_my_self_def_8h_a7927e087749615dae3114cc27b91c86d}{V\+O\+ID}} A\+S\+U\+S\+Factory\+::\+Destroy (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

Destroy


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
V\+O\+ID 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
singleton 
\end{DoxyNote}


Definition at line 326 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_a40d4d2d557b0cf3b70ada2cd2276266d}\label{class_a_s_u_s_factory_a40d4d2d557b0cf3b70ada2cd2276266d}} 
\index{ASUSFactory@{ASUSFactory}!Instance@{Instance}}
\index{Instance@{Instance}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{Instance()}{Instance()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_abstract_factory}{Abstract\+Factory}} $\ast$ A\+S\+U\+S\+Factory\+::\+Instance (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

Instance


\begin{DoxyParams}{Parameters}
{\em V\+O\+ID} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Abstract\+Factory$\ast$ 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
singleton 
\end{DoxyNote}


Definition at line 308 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp.

\mbox{\Hypertarget{class_a_s_u_s_factory_aa42cc378e84fcad9b2753f970d8c4982}\label{class_a_s_u_s_factory_aa42cc378e84fcad9b2753f970d8c4982}} 
\index{ASUSFactory@{ASUSFactory}!operator=@{operator=}}
\index{operator=@{operator=}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}}\& A\+S\+U\+S\+Factory\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} \&}]{c\+A\+S\+U\+S\+Factory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}

Assignment


\begin{DoxyParams}{Parameters}
{\em const} & \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}}\& c\+A\+S\+U\+S\+Factory \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}}\& 
\end{DoxyReturn}


\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{class_a_s_u_s_factory_aa42c2225f44f799055b20c9ab6096b1d}\label{class_a_s_u_s_factory_aa42c2225f44f799055b20c9ab6096b1d}} 
\index{ASUSFactory@{ASUSFactory}!m\_pInstance@{m\_pInstance}}
\index{m\_pInstance@{m\_pInstance}!ASUSFactory@{ASUSFactory}}
\doxysubsubsection{\texorpdfstring{m\_pInstance}{m\_pInstance}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_a_s_u_s_factory}{A\+S\+U\+S\+Factory}} $\ast$ A\+S\+U\+S\+Factory\+::m\+\_\+p\+Instance = N\+U\+LL\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [private]}}



Definition at line 314 of file D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+h.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
C\+:/96\+\_\+project/\+Design\+Pattern/\+Abstract\+Factory/groupinc/\mbox{\hyperlink{_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h}{D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+h}}\item 
C\+:/96\+\_\+project/\+Design\+Pattern/\+Abstract\+Factory/\mbox{\hyperlink{_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp}{D\+E\+S\+I\+G\+N\+P\+A\+T\+T\+E\+R\+N\+\_\+\+Abstract\+Factory.\+cpp}}\end{DoxyCompactItemize}
